package com.ywu.app.manage.standard.data;

import com.ywu.app.manage.standard.dto.YwuAppUserDto;
import com.ywu.app.manage.standard.entity.YwuAppUserEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

@Mapper
public interface YwuAppUserRepository {
    List<YwuAppUserEntity> queryPageList(@Param("model") YwuAppUserDto dto);

    int queryPageCount(@Param("model") YwuAppUserDto dto);

    void addAppUserInfo(@Param("model") YwuAppUserEntity ywuAppUserEntity);

    void deleteAppUserInfoById(@Param("model") YwuAppUserEntity ywuAppUserEntity);

    YwuAppUserEntity getEntity(@Param("model") YwuAppUserEntity ywuAppUserEntity);

    void deleteByAppId(@Param("model") YwuAppUserDto ywuAppUserDto);

    void deleteByAppIdAndUserId(@Param("model") YwuAppUserDto ywuAppUserDto);

    void updateAppIdByOriginAppId(@Param("sourceAppId") String sourceAppId, @Param("destAppId") String destAppId,
                                  @Param("updateBy") String updateBy, @Param("updateDate") Date updateDate);

    void deleteByUserId(@Param("model") YwuAppUserDto ywuAppUserDto);
}
